/*
 * Copyright 2011 SWM Services GmbH.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */
package de.swm.commons.mobile.client.widgets.map.data;

/**
 * Inteface which defines a station whcih will be displayed on the Map.
 * @author wiese.daniel
 * <br>copyright (C) 2012, SWM Services GmbH
 *
 */
public interface IStationData {
	
	/**
	 * Precalculated distance form the current position.
	 * @return the distance
	 */
	double getDistance();

	/**
	 * If this station is the origin (departure) station
	 * @return true if departure
	 */
	boolean isOrigin();

	/**
	 * If this station is the target (destination) station
	 * @return true if departure
	 */
	boolean isTarget();
	
	/**
	 * Returns the GEO Position of the station. 
	 * @return the geo position
	 */
	LatLng getPos();

	/**
	 * If this station is the origin (departure) station
	 * @param isOrigin true if departure
	 */
	void setOrigin(boolean isOrigin);
	
	/**
	 * If this station is the target (destination) station
	 * @param isTarget true if departure
	 */
	void setTarget(boolean isTarget);

	/**
	 * Returns the name without the city name.
	 * @return the name
	 */
	String getShortName();


}
